iT邦幫忙

2024 iThome 鐵人賽

DAY 6
0
Modern Web

ASP.NET Core的終極奧義:從零到無敵系列 第 6

Day_6 創建模型與資料庫連接

  • 分享至 

  • xImage
  •  

在ASP.NET Core中,模型負責應用中的數據管理,並與資料庫進行交互。透過Entity Framework Core,我們可以輕鬆地定義模型並建立與資料庫的連接,實現資料的保存與查詢。本章將介紹如何創建模型並設置資料庫連接。


1. 安裝 Entity Framework Core

在開始之前,我們需要將Entity Framework Core安裝到專案中。使用以下命令安裝相關的NuGet套件:

dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Tools

2. 定義模型

模型是應用中與資料庫對應的物件。在這裡,我們將定義一個簡單的Student模型,包含學生的Id、Name和Age三個屬性:

public class Student
{
    public int Id { get; set; }
    public string Name { get; set; }
    public int Age { get; set; }
}

3. 創建資料庫上下文(DbContext)

DbContext類負責與資料庫進行交互,並且它管理著資料模型與資料庫的連接。以下是一個簡單的AppDbContext類的定義,它包含Student模型:

public class AppDbContext : DbContext
{
    public AppDbContext(DbContextOptions<AppDbContext> options)
        : base(options)
    {
    }

    public DbSet<Student> Students { get; set; }
}

4. 配置資料庫連接

在ASP.NET Core的appsettings.json文件中,我們可以配置SQL Server的連接字串:

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=StudentDb;Trusted_Connection=True;"
  }
}

然後,在Startup.cs(或Program.cs)中配置應用程序使用這個連接字串並註冊DbContext:

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddDbContext<AppDbContext>(options =>
            options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
    }
}

這樣,ASP.NET Core應用程序就能與SQL Server進行連接。

5. 建立資料庫並進行遷移

一旦模型和資料庫上下文設置完畢,我們就可以通過命令行工具來創建資料庫並應用遷移:

dotnet ef migrations add InitialCreate
dotnet ef database update

InitialCreate表示我們的初始資料庫結構,dotnet ef database update則會將這些結構更新到實際的資料庫中。

6. 測試模型與資料庫的連接

現在,所有設置都完成了,我們可以在控制器中使用AppDbContext來對Student資料進行CRUD操作。例如,通過以下程式碼,我們可以將新的學生資料保存到資料庫:

public class StudentsController : Controller
{
    private readonly AppDbContext _context;

    public StudentsController(AppDbContext context)
    {
        _context = context;
    }

    public IActionResult Create()
    {
        var student = new Student
        {
            Name = "John Doe",
            Age = 20
        };

        _context.Students.Add(student);
        _context.SaveChanges();

        return Ok("Student created successfully!");
    }
}

此控制器中的Create方法負責將新學生資料加入資料庫,並儲存變更。

總結

透過Entity Framework Core,我們能夠簡單地在ASP.NET Core應用中創建模型並設置與資料庫的連接。從模型的定義到資料庫的連接配置,再到資料的保存與查詢,這些步驟構成了應用的基礎。隨著應用的發展,我們還會深入探討更複雜的資料操作與模型關係。


上一篇
Day_5 理解MVC架構的奧義
下一篇
Day_7 建立基本的CRUD操作裡面的CR
系列文
ASP.NET Core的終極奧義:從零到無敵30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言